package org.sundatagroup.aurora.core.entity.particle;

import java.util.HashMap;

/**
 * <p>粒子组, 以工程号为分组依据, 将粒子分成组, 便于管理
 * </p>
 * 
 * @author Zdream
 * @date 2018-06-08
 * @since 0.2.0
 */
public class ParticleGroup {
	
	/**
	 * 工程 ID
	 */
	public final int project;
	
	ProjectParticle pp;
	HashMap<Integer, ModuleParticle> mps = new HashMap<>();
	HashMap<Integer, IndexParticle> ips = new HashMap<>();

	/**
	 * @return
	 *   获得整个 Project 默认配置粒子
	 */
	public ProjectParticle getProjectParticle() {
		return pp;
	}
	
	/**
	 * @param mid
	 *   模块 ID
	 * @return
	 */
	public ModuleParticle getModuleParticle(int mid) {
		return mps.get(mid);
	}
	
	/**
	 * @param index
	 *   模块在工程的索引, 从 0 开始
	 * @return
	 */
	public IndexParticle getIndexParticle(int index) {
		return ips.get(index);
	}
	
	ParticleGroup(int project) {
		this.project = project;
	}

}
